草庐IT

Java jackson org.codehaus.jackson.map.exc.UnrecognizedPropertyException

全部标签

java - org.codehaus.plexus.component.repository.exception.ComponentLookupException : java. util.NoSuchElementException

我尝试测试我的Maven插件并收到奇怪的异常。发现类似问题here,但答案没有帮助。pom.xmlorg.apache.mavenmaven-plugin-api3.3.9org.apache.mavenmaven-project3.0-alpha-2com.jcabijcabi-aether0.10.1org.apache.maven.plugin-toolsmaven-plugin-annotations3.4providedorg.apache.maven.plugin-testingmaven-plugin-testing-harness3.3.0testorg.apache.

java - jackson 试图将 json 反序列化为类型对象列表

我正在尝试使用Jackson反序列化一个对象的属性,该对象是一个类型对象列表。当我尝试这样做时出现以下错误Cannotinstantiatevalueoftype[maptype;classjava.util.HashMap,[simpletype,classjava.lang.String]->[simpletype,classjava.lang.String]]fromJSONString;nosingle-Stringconstructor/factorymethod到目前为止,我有以下内容,但它似乎不起作用。Terms.class@JsonDeserialize(as=Json

java - 在 Jackson 的 ObjectMapper 中动态启用/禁用 UNWRAP_ROOT_VALUE 和 WRAP_ROOT_VALUE?

有没有办法动态启用/禁用Jackson的ObjectMapper中的UNWRAP_ROOT_VALUE和WRAP_ROOT_VALUE。我必须根据调用的服务启用/禁用这些属性,有些请求需要JsonRootName而有些则不需要。我在需要它的类中有@JsonRootName注释。我有一个扩展Jackson对象映射器的自定义ObjectMapper类。我正在调用一种方法来根据调用的服务启用/禁用属性,但它似乎不起作用。publicvoidsetWrapValue(booleanwrap){finalAnnotationIntrospectorintrospector=newJacksonA

java - 使用 uberjar 中的 Jersey 和 Jackson 时不支持的媒体类型

我目前面临Jersey和Jackson的问题,我无法找到解决方案:当我尝试从JSON序列化一个POJO作为Jersey端点中的POST参数时,如果出现以下情况,它会返回错误我从uberjar中调用它。如果我在从Eclipse启动主方法后使用相同的wget调用,则一切正常,并且我得到了预期的答案。我搜索过其他人在使用Jersey和后参数应用程序类型时遇到问题,例如Error415UnsupportedMediaType:POSTnotreachingRESTifJSON,butitdoesifXML和JAX-RS:Howtoautomaticallyserializeacollectio

java - 在 Play 中使用 Map 作为模型的属性

我正在尝试使用map作为我的一个模型属性的类型。我们以这两个类为例:@EntitypublicclassFooextendsModel{@OneToMany(mappedBy="foo",cascade=CascadeType.ALL)@MapKey(name="name")publicMapbars;publicStringname;}@EntitypublicclassBarextendsModel{@ManyToOnepublicFoofoo;publicStringname;}当然非常简单,但这是基本思想。因此,我想要实现的目标是获取一个以Bars作为值,以名称作为Foo键的映

java - 使用带有泛型的 Jackson ObjectMapper 到 POJO 而不是 LinkedHashMap

我正在使用Jersey定义如下服务:@Path("/studentIds")publicvoidwriteList(JsonArraystudentIds){//iterateoverstudentIdsandsavethem}JsonArray在哪里:publicclassJsonArrayextendsArrayList{publicJsonArray(Stringv)throwsIOException{ObjectMapperobjectMapper=newObjectMapper(newMappingJsonFactory());TypeReference>typeRef=ne

java - Jersey & Jackson - 修改 Jackson 输出的资源

我目前正在使用Jersey&Jackson创建REST服务。现在,当Resource方法生成application/json并返回一个POJO时,它会正确地将对象序列化为JSON并将响应返回给客户端。我现在要做的是设置Jersey,这样当查询参数出现时(比如说“缩进”),我可以告诉Jackson以“更漂亮的格式,也就是缩进”序列化JSON。您可以通过使用SerializationConfig.Feature.INDENT_OUTPUT配置JSON映射器轻松告诉Jackson执行此操作。问题是,我如何根据每个请求获取查询参数并使用它来修改Jackson的输出?

java - 我可以自定义 Jackson 错误消息吗?

我有一个JacksonMappingException,我用它来为用户产生错误:publicMap>>getErrors(JsonMappingExceptione){Map>>errors=newHashMap();List>badFields=newArrayList();for(Referenceref:e.getPath()){MapbadField=newHashMap();badField.put("field",ref.getFieldName());badField.put("description",e.getOriginalMessage());badFields.

java - 有没有办法从元注释中注入(inject) Jackson 注释值,类似于 Spring 的 AliasFor 注释?

我们正在使用@JacksonAnnotationsInside并希望使用元注释从类中注入(inject)一个属性。即我们有一个带有@JsonTypeInfo()的元注解,并希望通过聚合注解注入(inject)defaultImpl。这是我尝试使用的注释:@Inherited@JacksonAnnotationsInside@Retention(RetentionPolicy.RUNTIME)@JsonTypeInfo(use=JsonTypeInfo.Id.CLASS,include=JsonTypeInfo.As.PROPERTY,property="@class")//,defau

java - 带有日期对象的 Jersey + Jackson 反序列化失败

我同时使用jersey和jackson来开发我的RESTAPI,但在反序列化日期字符串时遇到问题。我已经在Jersey注册了一个提供者类:@ProviderpublicclassMyJsonProviderextendsJacksonJsonProvider{publicstaticfinalStringDATE_FORMAT="yyyy-MM-ddHH:mm:ss";@OverridepublicvoidwriteTo(Objectvalue,Classtype,TypegenericType,Annotation[]annotations,MediaTypemediaType,Mu